package repository.templates
import  repository.artefact.details.*
import  repository.artefact.*

class TemplatesService {
    static expose=['xfire']
    String RELATIVE_PATH = "repository/templates"
    String EXTENSION = ".tpl"
    
    def artefactService  
    
    static transactional = true
        
    def JerarquiaDetallesArtefacto getJerarquiaDetallesArtefacto() {
        artefactService.relativePath = RELATIVE_PATH
        artefactService.extension = EXTENSION
        JerarquiaDetallesArtefacto jerarquia = artefactService.getJerarquiaDetallesArtefacto()
        
        return jerarquia
    }
    
    def Template getTemplate(String n, String v, String p) {
        artefactService.relativePath = RELATIVE_PATH
        artefactService.extension = EXTENSION
        Artefacto artefacto = artefactService.get(n,v,p,new Template())           
    }  
    
    //def boolean saveTemplate(Template template) {
    //    artefactService.relativePath = RELATIVE_PATH
    //    artefactService.extension = EXTENSION
    //    
    //    boolean result = artefactService.save(template)
    //    
    //    return result
    //}
    
    def boolean saveTemplate(String path, String nombre, String nombreArchivo, String numVersion, String contenido) {
        artefactService.relativePath = RELATIVE_PATH
        artefactService.extension = EXTENSION
        
        DetallesArtefacto detalleArtefacto =  new DetallesArtefacto(path: path, nombre: nombre, nombreArchivo: nombreArchivo, numVersion: numVersion)
        Template template = new Template(detalleArtefacto: detalleArtefacto, contenido: contenido)
        
        boolean result = artefactService.save(template)
        
        return result
    }  

}
